/*
 * DatosCambiaDuenio.h
 *
 *  Created on: 31/01/2010
 *      Author: San Martín, Matías I.
 */

#ifndef DATOSCAMBIADUENIO_H_
#define DATOSCAMBIADUENIO_H_

#include "DatosMensaje.h"

#include "../../../Middleware/Common/IdJugador.h"

namespace aplicacion {

class DatosCambiaDuenio  : public DatosMensaje {
//------------------------------ CONSTANTES ------------------------------
public:

//------------------------------ ATRIBUTOS ------------------------------
public:
	IdJugador _duenioNuevo;
	IdJugador _duenioAnterior;

//------------------------------ METODOS ------------------------------
public:
	DatosCambiaDuenio();
	virtual ~DatosCambiaDuenio();

	virtual std::string toString() const;

	virtual t_tipoMensaje getTipo()
	{
		return CAMBIO_DUENO;
	}
//-------------------- de interfaz framework::io::SerializableToFile
	/**
	 * @see framework::io::SerializableToFile#save(int)
	 */
	virtual size_t save (int fd) const;

	/**
	 * @see framework::io::SerializableToFile#load(int)
	 */
	virtual size_t load (int fd);

	/**
	 * @see middleware::io::SerializableToArray#saveToArray(int)
	 */
	virtual size_t saveToArray (uint8_t* arr) const;

	/**
	 * @see middleware::io::SerializableToArray#loadFromArray(int)
	 */
	virtual size_t loadFromArray (const uint8_t* arr);
};

} //namespace aplicacion

#endif /* DATOSCAMBIADUENIO_H_ */
